<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>

</body>
<script>
    // 2. 数组去重
    // 有一个数组 var arr = [ 1, 2, 3, 3, 2, 1, 3, 1, 2, 1, 3, 2]  去除数组中的重复项=> [1,2,3]

    // 删除去重  => 每样保留一个 把后面所有的删除

    var arr = [1, 2, 3, 3, 2, 1, 3, 1, 2, 1, 3, 2];
    // var arr = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1];

    // 原数组: [ 1, 2, 3, 3, 2, 1, 3, 1, 2, 1, 3, 2]
    // 第一步:   那第一个和后面所有的比  => 删除后面的重复项
    //  [1, 2, 3, 3, 2, 3, 2, 3, 2]

    // 第一个下标: 0
    // 后面所有的: 0 + 1 , arr.length-1

    // for (var j = 1; j < arr.length; j++) {
    //     if (arr[j] === arr[0]) {
    //         arr.splice(j, 1);
    //         j--;
    //     }
    // }

    // console.log(arr);

    // 第二步:   那第二个和后面所有的比  => 删除后面的重复项
    //   0  1  2  3  4  5
    //  [1, 2, 3, 3, 3, 3]
    // 第二个下标: 1
    // 后面所有的: 1 + 1 , arr.length-1

    // for (var j = 2; j < arr.length; j++) {
    //     if (arr[j] === arr[1]) {
    //         arr.splice(j, 1);
    //         j--;
    //     }
    // }
    // console.log(arr);

    // for (var j = 3; j < arr.length; j++) {
    //     if (arr[j] === arr[2]) {
    //         arr.splice(j, 1);
    //         j--;
    //     }
    // }
    // console.log(arr);

    for (var i = 0; i < arr.length; i++) {
        // i 第i次   0 
        // i+1  -  arr.length-1  后面所有的
        for (var j = i + 1; j < arr.length; j++) {
            if (arr[j] === arr[i]) {
                arr.splice(j, 1);
                j--;  //   由于数组塌陷 => 后面的元素可能批量前移,占据被删除的元素的位置 => 以防万一 下次还从当前位置删
            }
        }
        console.log(arr);
    }




</script>

</html>